
//  import { ListNode } from ".";

import { ListNode } from "../1224";

function mergeTwoLists(list1: ListNode | null, list2: ListNode | null): ListNode | null {
    if (!list1) {
        // 一为空返回二
        return list2;
    } else if (!list2) {
        // 二为空返回一
        return list1;
    } else if (list1.val < list2.val) {
        // 当一的值小于二的值的时候 将一的值为下一个指向 并且递归一的next
        list1.next = mergeTwoLists(list1.next, list2);
        return list1;
    } else {
        // 当二的值小时 返回list2 并比较 2的下一个节点与一的大小
        list2.next = mergeTwoLists(list1, list2.next);
        return list2;
    }
};

const node1: ListNode = new ListNode(1, new ListNode(2, new ListNode(3)));
const node2: ListNode = new ListNode(0, new ListNode(4, new ListNode(5)));

const result = mergeTwoLists(node1, node2);
console.log(result);
